<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>对象属性描述符</title>
  </head>
  <body>
    <p>获取对象某个属性的 value,writable,enumerable,configurable 这几个特性</p>
    <pre>
         Object.getOwnPropertyDescriptor(object,property)
      </pre
    >
    <pre>
      const obj={foo:123}
      Object.getOwnPropertyDescriptor(obj,'foo')
     //  {
     //      value: 123,
     //      writable: true,
     //      enumerable: true,
     //      configurable: true
     //   }
    </pre>
    <p>
      enumerable 为 false ，表示对象属性不可枚举，for...in 和 Object.keys()
      都无法枚举对象属性
    </p>
    <p>enumerable 为 true ，表示对象属性可枚举，for...in 可以枚举对象属性</p>
  </body>
</html>
<script>
  const obj = { foo: 123 };
  Object.getOwnPropertyDescriptor(obj, "foo");
  // {
  //    value: 123,
  //    writable: true,
  //    enumerable: true,
  //    configurable: true,
  //  };
</script>
